System and method of noise-dependent classification

ABSTRACT

A noise-dependent classifier for a speech recognition system includes a recognizer ( 15 ) that provides scores and score differences of two closest in-vocabulary words from a received utterance. A noise detector ( 17 ) detects the noise level of a pre-speech portion of the utterance. A classifier ( 19 ) is responsive to the detected noise level and scores and noise dependent model for making decisions for accepting or rejecting the utterance as a recognized word depending on the noise-dependent model and the scores.

This application claims priority under 35 USC §119(e)(1) of provisional application No. 60/136,778, filed May 28, 1999.

FIELD OF INVENTION

This invention relates to recognition and more particularly to noise-dependent rejection decision.

BACKGROUND OF INVENTION

Speech recognition is finding more uses today in noisy environments. Speech recognition involves matching acoustic models to input speech and generating probability scores for the match to the models. Simple score-difference-based decision has been reported by C. S. Ramalingam, Y. Gong, L. P. Netsch and Anderson in Proc. of IEEE Int. Conf. on Acoustics, Speech, and Signal Processing, entitled “Speaker-dependent Name Dialing in a Car Environment,” Phoenix, March 1999. Speech recognition in these noisy environments such as use along a highway can cause severe problems in speech recognition.

SUMMARY OF INVENTION

In accordance with one embodiment of the present invention, improvement is provided by noise-dependent classification of the input that includes detecting noise level and providing a score value based on input recognition. A classifier is responsive to the detected input noise level and the score value for making acceptance or rejection decisions.

In accordance with another embodiment of the present invention, a speech recognition system includes a speech recognizer which has a database of in-vocabulary words that provides a difference score for an utterance relating to in-vocabulary words and a noise detector that detects noise level of the utterance and a classifier responsive to the detected noise level and the difference score for accepting or rejecting the closest in-vocabulary word as a recognized word.

DESCRIPTION OF THE DRAWING

FIG. 1 is a block diagram of the recognition system according to one embodiment of the present invention;

FIG. 2 illustrates noise level versus difference score and profile of scored sample under quiet and noisy conditions;

FIG. 3 is a plot of noise level versus score difference;

FIG. 4 is a plot of probability versus difference score illustrating mean level and variance width;

FIG. 5 illustrates name dialing decision using noise dependent polynomial; and

FIG. 6 illustrates average error rate as a function of noisy conditions and penalty settings.

DESCRIPTION OF THE PREFERRED EMBODIMENTS OF THE PRESENT INVENTION

Referring to FIG. 1, there is illustrated a speech recognizer 10 according to one embodiment of the present invention.

The incoming analog speech is converted to digital data speech frames at A/D converter 11 which samples the incoming speech and converts samples to digital data. The speech frames are applied to Mel Frequency Cepstral Coefficient (MFCC) processor 13. The speech frame or token is applied to recognizer 15 and pre-speech portion is applied to noise detector 17, which measures the noise level by averaging the energy over eight frames. The output from the recognizer 15 and the noise level detected from detector 17 are applied to classifier 19 to determine acceptance or rejection of the speech frame. The recognizer 15 output provides scores based on probability the received utterance is a recognized word. The score should be high for in-vocabulary words (IV) and low for out of vocabulary words (OOV). The recognizer 15 includes an in-vocabulary database. The classifier 19 should output “Acceptance” if an IV word is spoken and “Rejection” if an OOV word is spoken. For example, if the vocabulary is only “yes” and “no” and a spoken “yes” is received, the distance of the detected spoken word should be close to “yes” and far from “no” so the score difference is high. That is the probability it is a “yes” is high. The classifier 19 then accepts “yes” and decides A (for acceptance). If, on the other hand, the input is “hello”, this is an out of vocabulary word and the score is low and the classifier should emit a “Rejection” decision. The words are sorted according to the scores. First, we calculate the distance of X (the pronounced word) with respect to all vocabulary words. If we have ten vocabulary words, we have ten values. Then, the vocabulary words are sorted according to their score. For example, 6.1, 5.1, 4.8, . . . 1.5, where 6.1 is the highest score where the pronounced word X is closest to the vocabulary word. The next step is to calculate the difference between the top (highest) score and the second highest score. For the example, it is 6.1−5.1=1. The score difference is used by the classifier to make a decision.

The next consideration is the noise level. The score difference distribution changes as conditions get noisier. Referring to FIG. 2, in-vocabulary such as “yes” is represented by A and out of vocabulary such as “hello” is represented by R. The difference score distribution of the vocabulary words is the highest in the quiet condition. The in-vocabulary and out of vocabulary words are far apart in the quiet condition. The profile shape is represented by a bell-shaped distribution for A and R in the quiet condition. As the noise level increases, the difference score distribution decreases as represented by an area A between two parallel lines. As the noise level increases, the out of vocabulary sounds produce higher difference scores as represented by the area R between two parallel lines. Under noisy conditions, the difference score is much less and the profile no longer reflects the distinct difference. This is particularly true of highway car mode with its attendant high noise. Under noisy conditions, the profile shape is changed to have a decrease mean and variance of the distribution of recognition scores changes.

Referring to FIG. 3, the distribution of the score O_(x) is be affected by noise O_(n). The x-axis is noise and the y-axis is the score difference between the two highest scores on O_(x). FIG. 3 shows that the score difference distribution changes as the test condition becomes noisier. The changes include decreased mean and shrinking variance.

To make reliable acceptance/rejection decision, it is necessary to model the change of distribution. In this application, the model is made a noise-dependent multi-variant Gaussian distribution, where both mean and variance of the distribution of recognition scores are allowed to change as function of noise power.

In FIG. 3, the “+” symbol represents the score difference distribution for quiet conditions; the “X” represents the recognition score difference distribution for a car driven in stop and go traffic and “*” represents the recognition score difference distribution for a car on a noisy highway. Note that for quiet conditions, the scores appear to have large difference values centered at about 2.4 and for highway noise conditions low difference values centered at about 1.

At any given noise level, we want the best decision to determine if a given received input X is in-vocabulary or out of vocabulary. The classifier 19 for a given noise level and score difference decides to accept the highest score word match or to reject. To do this, we need to model the change of difference score distribution. According to the present invention, the model is noise-dependent multi-variate Gaussian distribution where both the mean and variance of the distribution of recognized scores change as a function of noise power.

Decision Model

We assume that, for each utterance token, the recognizer produces a score feature vector O_(x)εR^(D), and a measure of noise energy O_(n) at which the test utterance is recorded from noise detector 17. The pair score feature vector and noise (O_(x),O_(n)) is the observation of the decision system under study.

Let $\begin{matrix} {p\overset{\Delta}{=}\left\{ {W,B} \right\}} & (1) \end{matrix}$

be the set of with-in (w) and between classes (B) or in-vocabulary and out of vocabulary, respectively. We assume that each class sεP is associated with a multi-variant Gaussian mixture distribution: $\begin{matrix} {{p\left( {\left. O_{x} \middle| s \right.,O_{n}} \right)} = {\sum\limits_{k}{\alpha_{k}^{S}{N\left( {{O_{x};\mu_{n}^{S}},_{k},\sum\limits_{n,k}^{S}} \right)}}}} & (2) \end{matrix}$

where $\alpha_{k}^{s}\overset{\Delta}{=}{\Pr \left( {ks} \right)}$

is the priori probability of component k associated to the class s. The symbol N stands for Gaussian distribution, O_(x) is the score feature (e.g., score difference), μ_(n,k) is the mean level for s at detected noise level, Σ^(s) _(n,k) is the variance width for noise level n and k is the index of Gaussian distribution $\begin{matrix} {{\sum\limits_{k}\alpha_{k}^{s}} = 1} & (3) \end{matrix}$

i.e., α_(k) ^(s) up to 1.

At the decision time, given (O_(x),O_(n)), the decision is given by: $\begin{matrix} {\hat{s} = {\underset{s \in p}{\arg \quad \max}\quad \beta_{s}{\Pr \left( s \middle| O_{x} \right)}}} & {\quad (4)} \\ {= {\underset{s \in p}{\arg \quad \max}\left\{ {{\log \quad \beta_{s}} + {\log \quad {\Pr (s)}} + {\log \quad {p\left( {\left. O_{x} \middle| s \right.,O_{n}} \right)}}} \right\}}} & {\quad (5)} \end{matrix}$

where β_(s) specifies the importance of making a wrong decision for $s,{{\sum\limits_{s \in p}\beta_{s}} = 1},{\Pr (s)}$

is a priori probability of class s.

Referring to FIG. 4, the mean or maximum probability is represented by μ⁰ for out of vocabulary and the variance width is represented by Σ⁰. To the right is the second bell curve for in-vocabulary where μ^(IV) is the means for in-vocabulary and Σ^(IV) is the variance width for in-vocabulary. If the curve at the left is greater than the curve at the right, it means that the received input x is out of vocabulary and should be rejected, and if the curve at the right is greater than the curve at the left, the input x is probably in-vocabulary and should be accepted. The β is the weighing in equations (4) and (5).

The set of parameters $\lambda \overset{\Delta}{=}\left\{ {\alpha_{K}^{S},\mu_{n}^{S},_{k},\sum\limits_{n,k}^{s}} \right\}$

controls the decision result. In the next two sections, we specify the decision parameters and describe how to estimate them based on a set of training data.

Parameter Estimation

In order to determine the mean and variance which are dependent on noise, we need to determine the criteria for choosing the parameters.

Let $\begin{matrix} {O\overset{\Delta}{=}\left\{ {O_{x},O_{n}} \right\}} & (6) \end{matrix}$

Denote the set of training data labeled O to the class s (B or W) by: $\begin{matrix} {O^{s}\overset{\Delta}{=}\left\{ {O_{1}^{s},O_{2}^{s},{\ldots \quad O_{M_{s}}^{s}}} \right\}} & (7) \end{matrix}$

where M_(s) the number of training observations (a token or difference score). Denote further the set of training observations of all classes by: $\begin{matrix} {O\overset{\Delta}{=}{\left\{ {O_{1}^{s},{\forall{s \in P}}} \right\} = \left\{ {O^{B},O^{W}} \right\}}} & (8) \end{matrix}$

We need to derive an optimum set {circumflex over (λ)} of parameters which maximizes the log-likelihood: $\begin{matrix} {\hat{\lambda} = {\underset{\lambda}{\arg \quad \max \quad \log}\quad {p\left( O \middle| \lambda \right)}}} & (9) \end{matrix}$

Denote an existing parameter set by λ′. According to the EM-procedure, maximizing equation (9) is equivalent to iteratively maximizing the following quantity: $\begin{matrix} {{Q\left( \lambda \middle| \lambda^{\prime} \right)} = {\sum\limits_{s \in P}{\sum\limits_{{({O_{X},O_{n}})} \in o^{S}}{\sum\limits_{k}{\log \quad {p\left( {O_{x},\left. k \middle| O_{n} \right.,\lambda} \right)}{\Pr \left( {\left. k \middle| O_{x} \right.,O_{n},\lambda^{\prime}} \right)}}}}}} & (10) \end{matrix}$

where

p(O _(x) ,k|O _(n),λ)=p(O|k,O _(n),λ)Pr(k|O _(n),λ)  (11)

Using Bayes rule, Pr(k|O_(x),O_(n),λ′) can be written in terms of probability density function of O_(x) given the mixing component k and model λ′: $\begin{matrix} \begin{matrix} {{\Pr \left( {\left. k \middle| O_{x} \right.,O_{n},\lambda^{\prime}} \right)} = \quad \frac{p\left( {O_{x},\left. k \middle| O_{n} \right.,\lambda^{\prime}} \right)}{p\left( {\left. O_{x} \middle| O_{n} \right.,\lambda^{\prime}} \right)}} \\ {= \quad \frac{{p\left( {\left. O_{x} \middle| k \right.,O_{n},\lambda^{\prime}} \right)}{\Pr \left( {\left. k \middle| O_{n} \right.,\lambda^{\prime}} \right)}}{\sum\limits_{k}{{p\left( {\left. O_{x} \middle| k \right.,O_{n},\lambda^{\prime}} \right)}{\Pr \left( {\left. k \middle| O_{n} \right.,\lambda^{\prime}} \right)}}}} \end{matrix} & (12) \end{matrix}$

and $\begin{matrix} {{p\left( {\left. O_{x} \middle| k \right.,O_{n},\lambda} \right)} = {N\left( {{O_{x};\mu_{n,k}^{s}},\sum\limits_{n,k}^{s}} \right)}} & (13) \end{matrix}$

From equation (10), equation (11) and equation (13) the objective function Q(λ|λ′) is maximized with respect to unknown parameters, $\begin{matrix} \begin{matrix} {{Q\left( \lambda \middle| \lambda^{\prime} \right)} = \quad {{\sum\limits_{s \in P}{\sum\limits_{{({O_{x},O_{n}})} \in O^{s}}{\sum\limits_{k}{\left\{ {\left. {\Pr \quad k} \middle| O_{x} \right.,O_{n},\lambda^{\prime}} \right)\log \quad {p\left( {\left. O_{x} \middle| k \right.,O_{n},\lambda} \right)}}}}} +}} \\ \left. \quad {{\Pr \left( {\left. k \middle| O_{x} \right.,{O_{n}\lambda^{\prime}}} \right)}\log \quad {\Pr \left( {\left. k \middle| O_{n} \right.,\lambda} \right)}} \right\} \\ {= \quad {\sum\limits_{s \in P}{\sum\limits_{{({O_{x},O_{n}})} \in O^{s}}{\sum\limits_{k}\left\{ {{{\Pr \left( {\left. k \middle| O_{x} \right.,O_{n},\lambda^{\prime}} \right)}{N\left( {{O_{x};\mu_{n,k}^{s}},\sum\limits_{n,k}^{s}} \right)}} +} \right.}}}} \\ \left. \quad {{\Pr \left( {\left. k \middle| O_{x} \right.,O_{n},\lambda^{\prime}} \right)}\log \quad \alpha_{k}^{s}} \right\} \end{matrix} & (14) \end{matrix}$

Mixture Coefficient α_(k) ^(s)

To obtain the estimation of the a priori probability of the mixing coefficient α_(k) ^(s), we apply Lagrange method to equation (14) with the constraint of equation (3): $\begin{matrix} {{\frac{\partial}{\partial\alpha_{k}^{s}}\left\{ {{Q\left( \lambda \middle| \lambda^{\prime} \right)} + {\theta {\sum\limits_{k}\alpha_{k}^{s}}}} \right\}} = {{\frac{\partial}{\partial\alpha_{k}^{s}}\left\{ {{\sum\limits_{s \in P}{\sum\limits_{{({O_{x},O_{n}})} \in O^{s}}{\sum\limits_{k}{{P\left( {\left. k \middle| O_{x} \right.,O_{n},\lambda^{\prime}} \right)}\log \quad \alpha_{k}^{s}}}}} - {\theta \quad {\sum\limits_{k}\alpha_{k}^{s}}}} \right\}} = 0}} & (15) \end{matrix}$

which gives $\begin{matrix} {{{\sum\limits_{{({O_{x},O_{n}})} \in O^{s}}{\Pr \left( {\left. k \middle| O_{x} \right.,O_{n},\lambda^{\prime}} \right)}} - {\theta \quad \alpha_{k}^{s}}} = 0} & (16) \end{matrix}$

summing over k gives $\begin{matrix} {\left. {{\theta = \left. {\sum\limits_{{({O_{x},O_{n}})} \in O^{s}}{\overset{P}{\sum\limits_{k}}k}} \middle| O_{x} \right.},O_{n},\lambda^{\prime}} \right) = M_{s}} & (17) \end{matrix}$

Therefore, $\begin{matrix} {\alpha_{k}^{s} = {\frac{1}{M_{s}}{\sum\limits_{{({O_{x},O_{n}})} \in O^{s}}{\Pr \left( {\left. k \middle| O_{x} \right.,O_{n},\lambda^{\prime}} \right)}}}} & (18) \end{matrix}$

Noise-dependent Mean Vector μ_(n, k)³

We further assume that the mean vector is a polynomial function of noise n: $\begin{matrix} {\mu_{n,k}^{s}\overset{\Delta}{=}{\sum\limits_{j}{c_{j,k}^{s}n^{j}}}} & (19) \end{matrix}$

With equation 19, equating the partial derivative of equation 14 with respect to c_(j,k) ^(s) to zero, we have: $\begin{matrix} {{\frac{\partial}{\partial c_{j,k}^{s}}{Q\left( \lambda \middle| \lambda^{\prime} \right)}} = {\frac{\partial}{\partial c_{j,k}^{s}}{\sum\limits_{s \in P}{\sum\limits_{{({O_{x},O_{n}})} \in O^{s}}{\sum\limits_{k}{{\Pr \left( {\left. k \middle| O_{x} \right.,O_{n},\lambda^{\prime}} \right)}\log \quad {N\left( {{O_{x};c_{j,k}^{s}},\sum\limits_{i,k}^{s}} \right)}}}}}}} & {\quad (20)} \\ {= {\sum\limits_{{({O_{x},O_{n}})} \in O^{s}}{{\Pr \left( {\left. k \middle| O_{x} \right.,O_{n},\lambda^{\prime}} \right)}\left( \sum\limits_{n,k}^{s} \right)^{- 1}{\left( {O_{x} - {\sum\limits_{p = 0}^{P_{k}^{s}}{c_{k,p}^{3}O_{n}^{p}}}} \right) \cdot O_{n}^{j}}}}} & {\quad (21)} \\ {= 0} & {\quad (22)} \end{matrix}$

By regrouping terms, equation 20 becomes: $\begin{matrix} {{\sum\limits_{p = 0}^{p_{k}^{s}}{\sum\limits_{{({O_{x},O_{n}})} \in O^{s}}{{P\left( {\left. k \middle| O_{x} \right.,O_{n},\lambda^{\prime}} \right)}\left( \sum\limits_{n,k}^{s} \right)^{- 1}O_{n}^{p + k}}}},\quad {c_{k,p}^{s} = {\sum\limits_{{({O_{x},O_{n}})} \in O^{s}}{{P\left( {\left. k \middle| O_{x} \right.,O_{n},\lambda^{\prime}} \right)}\left( \sum\limits_{n,k}^{s} \right)^{- 1}O_{n}^{j}}}},O_{x}} & (23) \end{matrix}$

Let $\begin{matrix} {{\eta_{k}^{s}\left( {O_{x},O_{n},m} \right)}\overset{\Delta}{=}{\Pr\left( {\left. k \middle| O_{x} \right.,O_{n},{{\lambda^{\prime}\left( \sum\limits_{n,k}^{s} \right)}^{- 1}O_{n}^{m}}} \right.}} & (24) \end{matrix}$

Equation 23 can be written as $\begin{matrix} {{\sum\limits_{p = 0}^{p_{k}^{2}}{\sum\limits_{{({O_{x},O_{n}})} \in O^{s}}{{\eta_{k}^{s}\left( {O_{x},O_{n},{p + j}} \right)} \cdot c_{k,p}^{s}}}} = {\sum\limits_{{({O_{x},O_{n}})} \in O^{s}}{{n_{k}^{s}\left( {O_{x},O_{n},J} \right)} \cdot O_{x}}}} & (25) \end{matrix}$

Equation 25 describes, for each mixture component k, a linear equation system P_(k) ^(s)+1 with variables defined in the vector space R^(D), which can be written in a compact form: $\begin{matrix} {{A_{k}^{s}c_{k}^{s}} = b_{k}^{s}} & (26) \end{matrix}$

A_(k) ^(s) is a (P_(k) ^(s)+1)×(P_(k) ^(s)+1) dimensional matrix: $\begin{matrix} {A_{k}^{s}\overset{\Delta}{=}\begin{bmatrix} a_{k,{({0,0})}}^{s} & \ldots & a_{k,{({0,P_{k}^{s}})}}^{s} \\ \vdots & a_{k,{({p,j})}}^{3} & \vdots \\ a_{k,{({P_{k}^{s},0})}}^{s} & \ldots & a_{k,{({P_{k}^{s},P_{k}^{s}})}}^{s} \end{bmatrix}} & (27) \end{matrix}$

where $\begin{matrix} {a_{k,{({p,j})}}^{s}\overset{\Delta}{=}{\sum\limits_{{({O_{x},O_{n}})} \in O^{s}}{\eta_{k}^{s}\left( {O_{x},{p + j}} \right)}}} & (28) \end{matrix}$

b_(k) ^(s) is a (P_(k) ^(s)+1) dimensional vector: $\begin{matrix} {b_{k_{n}}^{s}\overset{\Delta}{=}\left\lbrack {b_{k,0}^{s},{\ldots \quad b_{k,j}^{s}},{\ldots \quad b_{k,P_{k}^{s}}^{s}}} \right\rbrack^{T}} & (29) \end{matrix}$

where $\begin{matrix} {b_{k,j}^{s}\overset{\Delta}{=}{\sum\limits_{{({O_{x},O_{n}})} \in O^{s}}{{\eta_{k}^{s}\left( {O_{x},O_{n},j} \right)} \cdot O_{x}}}} & (30) \end{matrix}$

and c_(k) ^(s) a (P_(k) ^(s)+1) dimensional vector: $\begin{matrix} {c_{k}^{s}\overset{\Delta}{=}\left\lbrack {c_{k,0}^{s},{\ldots \quad c_{k,j}^{s}},{\ldots \quad c_{k,P_{k}^{s}}^{s}}} \right\rbrack^{T}} & (31) \end{matrix}$

Finally, c_(k) ^(s) can be obtained by any adequate linear system solution method. In solving equation 26, the value of $\left( \sum\limits_{n,k}^{s} \right)^{- 1}$

can be substituted by the one in the λ′ set.

Noise-dependent covariance matrix $\sum\limits_{n,k}^{s}$

We assume diagonal covariance matrix and therefore each dimension of the feature vector can be processed independently.

For each dimension, the value range of O_(x) is partitioned into Q equal intervals. Let the value at the lower end of the q-th interval be n_(q). The variance over the q-th interval is given by: $\begin{matrix} {{\sigma_{k,q}^{s}\overset{\Delta}{=}\frac{\sum\limits_{{{({O_{x},O_{n}})} \in O^{s}},{n_{q} \leq O_{n} < n_{q + 1}}}\left( {O_{x} - \mu_{n,k}^{s}} \right)^{2}}{\sum\limits_{{{({O_{x},O_{n}})} \in O^{s}},{n_{q} \leq O_{n} < n_{q + 1}}}}}\quad} & (32) \end{matrix}$

Denote the count of mixture k at interval q as: $\begin{matrix} {\theta_{k,q}^{s}\overset{\Delta}{=}{\sum\limits_{{{({O_{x},O_{n}})} \in Q^{s}},{n_{q} \leq O_{n} < n_{q + 1}}}{\Pr \left( {\left. k \middle| O_{x} \right.,O_{n},\lambda^{\prime}} \right)}}} & (33) \end{matrix}$

We assume that the distribution of σ_(k,p) ^(s) is a noise-dependent Gaussian and that the mean of σ_(k,p) ^(s) as a polynomial function of n, the same way as for the mean vectors developed in the noise-dependent mean vector section: $\begin{matrix} {\sigma_{n,k}^{s}\overset{\Delta}{=}{\sum\limits_{j}{{\hat{d}}_{k,p}^{s}n^{j}}}} & (34) \end{matrix}$

As we are only interested in the mean of σ_(k,q) ^(s), we assume its variance to be independent of n. To estimate polynomial parameters of σ_(k,q) ^(s), the result of the noise-dependent mean vector section can be reused. In particular, equation 23 is revised as: $\begin{matrix} {{\sum\limits_{p = 0}^{p_{k}^{s}}{\sum\limits_{q = 1}^{Q}\theta_{k}^{s}}},\left( n_{q} \right)^{p + j},{{\hat{d}}_{k,p}^{s} = {\sum\limits_{q = 1}^{Q}{{\theta_{k,q}^{s}\left( n_{q} \right)}^{j} \cdot \sigma_{k,q}^{s}}}}} & (35) \end{matrix}$

which is a linear system of {circumflex over (d)}_(k,p) ^(s) and can be solved using the same procedure as described in the noise-dependent mean vector section. The variance $\sum\limits_{n,k}^{s}$

is then given by the following polynomial expression: $\begin{matrix} {\sum\limits_{n,k}^{s}{\overset{\Delta}{=}{\sum\limits_{j}{{\hat{d}}_{k,p}^{s}n^{j}}}}} & (36) \end{matrix}$

Evaluation Results

Database

The evaluation database consists of the name-dialing task recorded with hands-free distant microphone, in four recording conditions:

parked-trn: car parked, engine of,

parked-eval (ec1): car parked, engine off,

stopngo-eval (ec2): car driven on a stop and go basis,

hiway-eval (ec3): car operating on highway.

In each session, 20 speakers (10 male) each read 50 names in 2 repeats. The total number of utterances per condition is slightly smaller than 2000. The database is sampled at 8 kHz, with MFCC analysis frame rate of 20 ms.

Decision Parameters

In this task, we need to make a decision whether the recognition result of a given test utterance should be accepted. In other words, referring to equation 1, we need to decide if the recognition result comes from in-vocabulary test (IV, or with-in class) or from out-of-vocabulary test (OOV, or out of class). In IV tests, the vocabulary size is 50. In OOV tests, to test each of the 50 names, the other 49-names are used as vocabulary.

A decision is made based on the values of (O_(x),O_(n)):

O_(x) is a decision feature vector of two components: the log-likelihood of the first candidate of the recognition, and the difference in log-likelihood between the top two candidates.

O_(n) is the noise level of the test utterance: measures as the average c₀ (0-th coefficient of the MFCC) over 8 pre-speech frames.

We chose to use 2-nd order polynomial for mean decision feature vectors, and 1-st order for variance. The number of mixture component is set to one per class.

Experimental Results

For IV tests, a acceptance decision should be issued and, for OOV tests, a rejection decision should be issued. The decision could incur two types of errors, i.e. false rejection of an IV item and false acceptance of an OOV item.

As indicated in equation 5, it is possible to balance to two types of errors by adjusting the values of β_(s). FIG. 5 plots the observed relationships between the two types of errors, for the three test conditions. For reference, equal error rate line is also plotted.

To measure the total error rate performance, we define average error rate as the average of the false rejection error rate and the false acceptance error rate. In FIG. 6, the average error as function of penalty β_(w)(β_(B)=0) is plotted.

In Table 3.3.3 we should, for each of the three test conditions, the total number of tested tokens, the name recognition error rate (without rejection decision), and the minimum equal error rate.

Test condition Test size Word error rate (%) MEER (%) hiway-eval (ec3) 1984 0.25 7.06 stopngo-eval (ec2) 1986 0.10 3.25 parked-eval (ec1) 1985 0.00 2.04

APPLICATION TO OTHER FIELDS

The present invention can be applied to any classification situations where background noise level may affect the parameters of the decision. 

What is claimed is:
 1. A noise-dependent classifier for rejection decisions based on scores and noise comprising: a noise detector for detecting the noise level; a score generator for providing score values based on input recognition; and a classifier responsive to the detected noise level and scores for making an acceptance or rejection decision by calculating the score as a mixture of Gaussian distributions with mean vector and variance matrix adjusted to compensate the detected noise level.
 2. A noise-dependent classifier for rejection decisions based on scores and noise comprising: a noise detector for detecting the noise level; a score generator for providing score values based on input recognition; and a classifier responsive to the detected noise level and scores for making an acceptance or rejection decision; said classifier includes a noise dependent model which treats scores as a multi-dimensional Gaussian distribution with noise-dependent mean vector and covariance matrix and noise dependency is modeled as a polynomial function of noise.
 3. The system of claim 2, wherein the Gaussian mixture distribution is ${P\left( {\left. O_{x} \middle| s \right.,O_{n}} \right)} = {\sum\limits_{\mu}{\alpha_{k}^{s}{N\left( {O_{x},\mu_{n,k}^{s},\sum\limits_{n,k}^{s}} \right)}}}$

where $\alpha_{k}^{s}\overset{\Delta}{=}{\Pr \left( k \middle| s \right)}$

is the a priori probability of component k associated to the class s, Q_(x) is the score, μ_(n,k) ^(s) is the noise dependent mean vector, O_(n) is the measure/noise energy, N is Gaussian and $\sum\limits_{n,k}^{s}$

is the noise-dependent covariance matrix.
 4. A speech recognition system comprising: a speech recognizer that provides scores and score-difference of closest two in-vocabulary words and out of vocabulary words in a received utterance; a noise detector for detecting the noise level of the pre-speech portion of the utterance; and a classifier responsive to the noise level and the scores for accepting or rejecting the utterance as a recognized word by calculating the score as a mixture of Gaussian distributions with mean vector and variance matrix adjusted to compensate the detected noise level.
 5. The system of claim 4, wherein said classifier includes a noise-dependent model for making acceptance/rejection decisions.
 6. The system of claim 4, wherein said recognizer generates a first difference score based on the difference between the two closest in-vocabulary words to the detected utterance and a second difference score between the two closest out of vocabulary words.
 7. A speech recognition system comprising: a speech recognizer that provides scores and score-difference of closest two in-vocabulary words and out of vocabulary words in a received utterance; a noise detector for detecting the noise level of the pre-speech portion of the utterance; and a classifier responsive to the noise level and the scores for accepting or rejecting the utterance as a recognized word; said classifier includes a noise-dependent model for making acceptance/rejection decisions; said recognizer generates a first difference score based on the difference between the two closest in-vocabulary words to the detected utterance and a second difference score between the two closest out of vocabulary words and the model treats scores as a multi-dimensional Gaussian distribution with noise-dependent mean vector and covariance matrix, and noise dependency is modeled as a polynomial function of noise.
 8. The system of claim 7, wherein the Gaussian mixture distribution is ${P\left( {\left. O_{x} \middle| s \right.,O_{n}} \right)} = {\sum\limits_{k}{\alpha_{k}^{s}{N\left( {O_{x},\mu_{n,k}^{s},\sum\limits_{n,k}^{s}} \right)}}}$

where $\alpha_{k}^{s}\overset{\Delta}{=}{\Pr \left( k \middle| s \right)}$

is the a priori probability of component k associated to the class s (in-vocabulary or out of vocabulary), O_(x) is the score, μ_(n,k) ^(s) is the noise mean vector, O_(n) is the measure of noise energy, N is Gaussian, and $\sum\limits_{n,k}^{s}$

is the noise-dependent covariance matrix.
 9. The classifier of claim 7 wherein the polynomial coefficients c of the decision classifier c are determined by solving the linear equation Ac=b where elements of A are composed of a weighted sum of powers of noise level and the elements of b are composed of weighted sum of measured recognizer scores.
 10. The classifier of claim 9 wherein said weights are composed of the counts of a given Gaussian component.
 11. A method for finding decision parameters for either accepting or rejecting recognized items based on scores associated with the item comprising the steps of: estimating the a priori probability α_(k) ^(s) where $\alpha_{k}^{s}\overset{\Delta}{=}{\Pr \left( k \middle| s \right)}$

 is the a priori probability of component k associated to the class s; determining noise-dependent mean vector μ_(s,k) ^(s) as a polynomial function of noise; determining noise-dependent covariance matrix $\sum\limits_{n,k}^{s}$

 as a polynomial function of noise; modeling the change of distribution by noise dependent multi-variate Gaussian distribution where both mean and variance of the distribution of scores change as a function of noise power according to ${P\left( {\left. O_{x} \middle| s \right.,O_{n}} \right)} = {\sum\limits_{\mu}{\alpha_{k}^{s}{N\left( {O_{x},\mu_{n,k}^{s},\sum\limits_{n,k}^{s}} \right)}}}$

where O_(x) is the socre and O_(n) is the noise measure.
 12. A speech recognition system comprising: a converter for converting analog speech to digital data speech frames; a Mel Frequency Cepstral Coefficient (MFCC) processor means coupled to said converter; a speech recognizer coupled to the MFCC processor means that provides scores and score-difference of closest two in-vocabulary words from a received utterance; a noise detector coupled to the MFCC processor means for detecting the noise level of a pre-speech portion of the utterance; and a classifier responsive to the detected noise level and the scores for accepting or rejecting the utterance as a recognized word.
 13. The system of claim 12, wherein said classifier includes a noise-dependent model for making decisions.
 14. The system of claim 13, wherein said classifier includes a noise-dependency model for making acceptance decisions which model probability of both in-vocabulary and out of vocabulary as a function of noise levels.
 15. A speech recognition system comprising: a converter for converting analog speech to digital data speech frames; a Mel Frequency Cepstral Coefficient (MFCC) processor means coupled to said converter; a speech recognizer coupled to the MFCC processor means that provides scores and score-difference of closest two in-vocabulary words from a received utterance; a noise detector coupled to the MFCC processor means for detecting the noise level of a pre-speech portion of the utterance; and a classifier responsive to the detected noise level and the scores for accepting or rejecting the utterance as a recognized word; said classifier includes a noise-dependent model for making decisions; said classifier includes a noise-dependency model for making acceptance decisions which model probability of both in-vocabulary and out of vocabulary as a function of noise levels; said model treats scores as a multi-dimensional Gaussian distribution with noise-dependent mean vector and covariance matrix, and noise dependency is modeled as a polynomial function of noise.
 16. The system of claim 15, wherein the Gaussian mixture distribution is ${P\left( {\left. O_{x} \middle| s \right.,O_{n}} \right)} = {\sum\limits_{k}{\alpha_{k}^{s}{N\left( {O_{x},\mu_{n,k}^{s},\sum\limits_{n,k}^{s}} \right)}}}$

where $\alpha_{k}^{s}\overset{\Delta}{=}{\Pr \left( {ks} \right)}$

is the prior probability of component k associated to the class s (in-vocabulary or out of vocabulary), O_(x) is the score, μ_(n,k) ^(s) is the noise-dependent mean vector, O_(n) is the measure of noise energy, N is Gaussian, and $\sum\limits_{n,k}^{s}$

is the noise dependent covariance matrix. 